import App from './App'
// 1. 导入 store 的实例对象
import store from 'store/store.js'
// 导入
import { $http } from '@escook/request-miniprogram'
uni.$http = $http

// 配置请求根路径
$http.baseUrl = 'https://api-hmugo-web.itheima.net'

// 请求拦截器
// 请求开始之前做一些事情
$http.beforeRequest = function (options) {
  uni.showLoading({
    title: '数据加载中...',
  })
  
  // 判断请求的是否为有权限的 API 接口
  console.log(options);
  if(options.url.indexOf('/my/') !== -1) {
    options.header = {
      // 字段的值可以直接从 vuex 中进行获取
      Authorization: store.state.m_user.token
    }
  }
}

// 响应拦截器
// 请求完成之后做一些事情
$http.afterRequest = function () {
  uni.hideLoading()
}
// 封装的展示消息提示的方法
uni.$showMsg = ((title="数据加载失败!", duration=1500) => {
  uni.showToast({
    title,
    icon:'none',
    duration
  })
})



// #ifndef VUE3
import Vue from 'vue'
Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
    ...App,
    // 2. 将 store 挂载到 Vue 实例上
    store
})
app.$mount()
// #endif

// #ifdef VUE3
import { createSSRApp } from 'vue'
export function createApp() {
  const app = createSSRApp(App)
  return {
    app
  }
}
// #endif